*************************
*Tables in the main text:
*************************

********************************************************************
*Table 1: The Effect of Distance to Muslim Trade Routes on City Size
********************************************************************
use data12001800.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  india ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  india mongol ,  vce(cluster cityid)
	
************************************
*Table 2: Alternative Specifications
************************************
use data12001800.dta, clear

gen interact_muslim=yr1800*muslim_city

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  muslim_city interact_muslim ln_up_c ln_up_m  india mongol ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  ln_up_c ln_up_m  india mongol if muslim_city==1,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  ln_up_c ln_up_m  india mongol if muslim_city==0,  vce(cluster cityid)

****************************************************
*Table 3: Pre-treatment Trends - 600, 1200 and 1800)
****************************************************
use data6121800.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact600 interact1800 yr622 yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol ,  vce(cluster cityid)

****************************************************
*Table 4: Pre-treatment trends - 1200, 1500 and 1800
****************************************************
use data12151800.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact1200 interact1800 yr1200 yr1800 longitude latitude asia africa agricsuit dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol,  vce(cluster cityid)

******************************************
*Table 5: Instrumental Variable Regression
******************************************
use data12001800.dta, clear

eintreg ln_lowerbound ln_upperbound ///
yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol , vce(cluster cityid) ///
endogenous(dist2trade_pre = ln_dist2chokeline yr1800 interact_iv longitude latitude asia africa agricsuit dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m india mongol) ///
endogenous(interact = interact_iv yr1800 ln_dist2chokeline longitude latitude asia africa agricsuit dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m india mongol)

*Wald Test for joint significance of instruments in the first-stage regression:
test [dist2trade_pre ]ln_dist2chokeline [dist2trade_pre ]yr1800 [dist2trade_pre]interact_iv [dist2trade_pre ]longitude ///
[dist2trade_pre ]latitude [dist2trade_pre ]asia [dist2trade_pre ]africa [dist2trade_pre ]agricsuit ///
[dist2trade_pre ]dist2coast [dist2trade_pre ]ln_dist2choke [dist2trade_pre ]muslim_city ///
[dist2trade_pre ]ln_up_c [dist2trade_pre ]ln_up_m [dist2trade_pre ]india [dist2trade_pre ]mongol

test [interact]interact_iv [interact]yr1800 [dist2trade_pre]ln_dist2chokeline [interact]longitude ///
[interact]latitude [interact]asia [interact]africa [interact]agricsuit ///
[interact]dist2coast [interact]ln_dist2choke [interact]muslim_city ///
[interact]ln_up_c [interact]ln_up_m [interact]india [interact]mongol

*********************************************************
*Table 6: Robustness Check - Additional Control Variables
*********************************************************
use data12001800.dta, clear

*Add Carolingian:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol carolingian ,  vce(cluster cityid)
*Add Crusaders:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol ln_dist2crusader ,  vce(cluster cityid)
*Add Low countries:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol lowcountry ,  vce(cluster cityid)
*Add European city-belt:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol europeancitybelt ,  vce(cluster cityid)
*Add Roman cities:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol roman ,  vce(cluster cityid)
*Add Ottoman cities:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol ottomancity ,  vce(cluster cityid) 
*Add Atlantic trader:
gen interact_atlantic=yr1800*atlantictrader
lab var interact_atlantic "Atlantic Country X 1800CE"
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  muslim_city ln_up_c ln_up_m  india mongol atlantictrader interact_atlantic ,  vce(cluster cityid)

******************************************************************************
*Table 7: The Effect of Distance to Trade Routes on City Size: 1400 vs 1600 CE
******************************************************************************
use data14001600.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
	, vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit   dist2coast ///
	ln_dist2choke muslim_city , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit    dist2coast ///
	ln_dist2choke muslim_city ln_up_c ln_up_m  , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit   dist2coast ///
	ln_dist2choke muslim_city ln_up_c ln_up_m  india , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit   dist2coast ///
	ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol , vce(cluster cityid)


*****************************************************************************
*Figures in the main  text*
******************************************************************************
***************************************************************
*Figure 2: Mean Predicted City POpulation in 600, 1200 and 1800
***************************************************************

use graph6121800.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact600 interact1800 yr622 yr1800 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol,  vce(cluster cityid)

predict close600 if year==622 & far==0
predict close1200 if year==1200 & far==0
predict close1800 if year==1800 & far==0
predict far600 if year==622 & far==1
predict far1200 if year==1200 & far==1
predict far1800 if year==1800 & far==1

egen farpanel=rsum(far600 far1200 far1800)
replace farpanel=. if farpanel==0
gen fardistance=exp(farpanel)
egen closepanel=rsum(close600 close1200 close1800)
replace closepanel=. if closepanel==0
gen closedistance=exp(closepanel)
bysort year: egen meanpredictpop_far=mean(fardistance)
bysort year: egen meanpredictpop_close=mean(closedistance)
bysort year: egen s=seq()
keep if s==1
keep year meanpredictpop_far meanpredictpop_close

twoway (line meanpredictpop_close year, lcolor(black) lwidth(vthick)) (line meanpredictpop_far year, lcolor(gs10) lwidth(vthick)), ///
 ytitle("Mean Predicted City Population (in 1000)")  xtitle("Year", size(medium)) ///
legend(label(1 "Close to trade route") label(2 "Far from trade route")) ///
yscale(range(0 40)) ylabel(0 (5) 40) graphregion(color(white)) bgcolor(white) ///
xscale(range(600 1800)) xlabel(600 (600) 1800) 

***************************************************************
*Figure 3: Mean Predicted City POpulation in 1200, 1500, 1800
***************************************************************

use graph12151800.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact1200 interact1800 yr1200 yr1800 longitude latitude asia africa agricsuit dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol,  vce(cluster cityid)

predict close1200 if year==1200 & far==0
predict close1500 if year==1500 & far==0
predict close1800 if year==1800 & far==0

predict far1200 if year==1200 & far==1
predict far1500 if year==1500 & far==1
predict far1800 if year==1800 & far==1

egen farpanel=rsum(far1200   far1500   far1800)
replace farpanel=. if farpanel==0
gen fardistance=exp(farpanel)
egen closepanel=rsum(close1200   close1500   close1800)
replace closepanel=. if closepanel==0
gen closedistance=exp(closepanel)
bysort year: egen meanpredictpop_far=mean(fardistance)
bysort year: egen meanpredictpop_close=mean(closedistance)
bysort year: egen s=seq()
keep if s==1
keep year meanpredictpop_far meanpredictpop_close

twoway (line meanpredictpop_close year, lcolor(black) lwidth(vthick)) (line meanpredictpop_far year, lcolor(gs10) lwidth(vthick)), ///
 ytitle("Mean Predicted City Population (in 1000)")  xtitle("Year", size(medium)) ///
legend(label(1 "Close to trade route") label(2 "Far from trade route")) ///
yscale(range(0 40)) ylabel(0 (5) 40) ///
xscale(range(1200 1800)) xlabel(1200 (300) 1800) graphregion(color(white)) bgcolor(white)

*******************************************************************************************************************************
*******************************************************************************************************************************

*************************
*Tables in the Appendix:
*************************

*********************************************
*Table A1: Summary Statistics (1200 and 1800)
*********************************************
use data12001800.dta, clear

summarize ln_lowerbound ln_upperbound dist2trade_pre longitude latitude asia africa agricsuit  dist2coast  ///
muslim_city ln_up_c ln_up_m  india mongol carolingian ln_dist2crusader atlantictrader lowcountry europeancitybelt roman ottomancity ln_dist2chokeline

*************************************************************************************
*Table A2: The Effect of Distance to Trade Routes on City Size 1200 vs. 1800 CE (OLS)
*************************************************************************************
use data12001800.dta, clear

keep if ln_lowerbound==ln_upperbound

reg ln_lowerbound  dist2trade_pre interact yr1800 ,  vce(cluster cityid)
reg ln_lowerbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ,  vce(cluster cityid)
reg ln_lowerbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke ,  vce(cluster cityid)
reg ln_lowerbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ,  vce(cluster cityid)
reg ln_lowerbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  ,  vce(cluster cityid)
reg ln_lowerbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  india ,  vce(cluster cityid)
reg ln_lowerbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  india mongol ,  vce(cluster cityid)

*************************************************************************************
*Table A3: The Effect of Distance to Trade Routes on City Size 1200 vs. 1800 CE (Excluding cities on the travel routes)
*************************************************************************************
use data12001800.dta, clear

keep if dist2trade_pre>1

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  india ,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke  muslim_city ln_up_c ln_up_m  india mongol ,  vce(cluster cityid)

************************************************************************
*Table A4: The Effect of Distance to Trade Routes on City Size in Europe 
************************************************************************
use conflict.dta, clear

*Conflict analysis:
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude agricsuit  dist2coast ///
ln_dist2choke muslim_city conflict ln_up_c ln_up_m india mongol if continent=="Europe" & cntry_name!="Russia" & cntry_name!="Ukraine"  ,  vce(cluster cityid)

*Conflict vs. No-Conflict Analysis:
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m india mongol if continent=="Europe" & cntry_name!="Russia" & cntry_name!="Ukraine"   & conflict==1,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m india mongol if continent=="Europe" & cntry_name!="Russia" & cntry_name!="Ukraine"   & conflict==0,  vce(cluster cityid)

*Conflict Effects over Time:
gen interact_conflict=yr1800*conflict
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1800 longitude latitude agricsuit  dist2coast ///
ln_dist2choke  muslim_city conflict interact_conflict ln_up_c ln_up_m india mongol if continent=="Europe" & cntry_name!="Russia" & cntry_name!="Ukraine" ,  vce(cluster cityid)

*******************************************
*Table A5: Time Trends - 900, 1200 and 1800
*******************************************
use data9121800.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact900 interact1800 yr900 yr1800 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol,  vce(cluster cityid)

********************************************************************************
*Table A6: The Effect of Distance to Trade Routes on City Size: 1300 vs. 1700 CE
********************************************************************************
use data13001700.dta, clear

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
	, vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
	ln_dist2choke , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit   dist2coast ///
	ln_dist2choke muslim_city , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit    dist2coast ///
	ln_dist2choke muslim_city ln_up_c ln_up_m  , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit   dist2coast ///
	ln_dist2choke muslim_city ln_up_c ln_up_m  india , vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit   dist2coast ///
	ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol , vce(cluster cityid)
	
********************************************************************************
*Table A7: The Effect of Distance to Trade Routes on City Size: 1400 vs. 1600 CE
********************************************************************************
use data14001600.dta, clear

*Muslim vs. Christian Analysis:
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  ln_up_c ln_up_m  india mongol if muslim_city==1,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  ln_up_c ln_up_m  india mongol if muslim_city==0,  vce(cluster cityid)

*Muslim Effects over Time:
gen interact_muslim=yr1600*muslim_city

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  muslim_city interact_muslim ln_up_c ln_up_m  india mongol,  vce(cluster cityid)

********************************************************************************
*Table A8: The Effect of Distance to Trade Routes on City Size: 1300 vs. 1700 CE
********************************************************************************
use data13001700.dta, clear

*Muslim vs. Christian Analysis:
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  ln_up_c ln_up_m  india mongol if muslim_city==1,  vce(cluster cityid)
intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  ln_up_c ln_up_m  india mongol if muslim_city==0,  vce(cluster cityid)

*Muslim Effects over Time:
gen interact_muslim=yr1700*muslim_city

intreg ln_lowerbound ln_upperbound  dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  muslim_city interact_muslim ln_up_c ln_up_m  india mongol,  vce(cluster cityid)

***********************************************************
*Table A9: Robustness Checks on City Size: 1400 vs. 1600 CE
***********************************************************
use data14001600.dta, clear

*Add Carolingian:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol carolingian ,  vce(cluster cityid)
*Add Crusaders:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol ln_dist2crusader ,  vce(cluster cityid)
*Add Low countries:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol lowcountry ,  vce(cluster cityid)
*Add European city-belt:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol europeancitybelt ,  vce(cluster cityid)
*Add Roman cities:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol roman ,  vce(cluster cityid)
*Add Ottoman cities:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol ottomancity ,  vce(cluster cityid) 
 *Add Atlantic trader:
gen interact_atlantic=yr1600*atlantictrader
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1600 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  muslim_city ln_up_c ln_up_m  india mongol atlantictrader interact_atlantic ,  vce(cluster cityid)

*************************************************************
*Table A10: Robustness Checks on City Size: 1300 vs. 1700 CE
*************************************************************
use data13001700.dta, clear

*Add Carolingian:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol carolingian ,  vce(cluster cityid)
*Add Crusaders:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol ln_dist2crusader ,  vce(cluster cityid)
*Add Low countries:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol lowcountry ,  vce(cluster cityid)
*Add European city-belt:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol europeancitybelt ,  vce(cluster cityid)
*Add Roman cities:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol roman ,  vce(cluster cityid)
*Add Ottoman cities:
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
 ln_dist2choke muslim_city ln_up_c ln_up_m  india mongol ottomancity ,  vce(cluster cityid) 
*Add Atlantic trader:
gen interact_atlantic=yr1700*atlantictrader
intreg ln_lowerbound ln_upperbound dist2trade_pre interact yr1700 longitude latitude asia africa agricsuit  dist2coast ///
ln_dist2choke  muslim_city ln_up_c ln_up_m  india mongol atlantictrader interact_atlantic ,  vce(cluster cityid)
